The TCP (Transmission Control Protocol) has often been used as the transport protocol for a wide variety of data services. The TCP performs well in traditional networks based on wire line links because of the TCP's efficient congestion control schemes, and because of the low packet loss probability (approximately <0.001) associated with traditional networks. However, the TCP performs poorly over the wireless link because of the high bit error rates associated with wireless links. The TCP slows data transmission, lowering throughput, when packets are lost because the TCP assumes that any packet loss results from congestion. This characteristic is a likely cause of the TCP's poor performance over the wireless link.
A Radio Link Protocol (RLP) has been used in conjunction with the TCP to address the TCP's poor performance. RLP layers typically incorporate Acknowledgement Request (ARQ) methods which confirm the receipt of frames sent from one peer entity to the other. If the ARQ method determines that a frame has not been received or received in error, it calls for the retransmission of the frame. One such RLP that improves TCP performance significantly is described in TIA/EIA/IS-707, which is incorporated herein by reference. The RLP ARQ scheme described in TIA/EIA/IS-707 (hereinafter “RLP IS-707”) is a Negative Acknowledgement (NAK) scheme.
In the RLP ARQ scheme described in TIA/EIA/IS-707, when the RLP layer of either the base or mobile station receives a new error free RLP DATA or IDLE frame that is out-of-order, it sends NAK messages for each RLP frame that was not received. The RLP layer keeps track of frames by maintaining Next Expected New Frame (V(R)) and Next Expected in Sequence Frame (V(N)) counters and comparing them with one another. For example, if the mobile station receives frame 10, the V(R) (Next Expected New Frame) and V(N) (Next Expected in Sequence Frame) would both be 11. If the mobile section then receives frames 13, 14 and 15 from the base station, (V(N)) would still be 11 while (V(R)) would be 16 at the mobile station. The mobile station, would then send to the base station a NAK message for frames 11 and 12 after receiving frame 13. The NAK message is, in essence, a request to the peer entity to retransmit the frame that was not received by the requesting entity, which is the mobile station in the example.
A NAK counter at the RLP layer is started for each frame corresponding to the NAK message (one counter for frame 11 and another for frame 12 in the example). The counter generally counts new DATA or IDLE frames received that did not correspond to the NAK message sent. In the example, both counters would be at 3 after frames 13, 14 and 15 were received, i.e. for every received frame that was not a retransmitted frame 11 and 12. When the counter reaches a predetermined threshold, the RLP layer sends additional NAK messages to the peer entity. In the example, if the threshold was 3, the mobile station would transmit additional multiple NAK messages to the peer entity after receiving frames 12, 13 and 14 from the base station.
In general, i+1 NAK messages are sent to the peer entity for the ith time the counter expires. In the RLP ARQ scheme described in TIA/EIA/IS-707, the maximum value of i is 2 before the frame corresponding to the NAK message (frame 12 in the example) is dropped and considered lost. Thus, in the RLP ARQ scheme described in TIA/EIA/IS-707, the maximum number of attempts to recover a lost frame is limited to 3. These additional attempts are referred to as re-trial attempts in this disclosure.
For each received NAK message, the transmitter retransmits the RLP frame requested in the NAK message. Thus, during the second or third re-trial attempt, a transmitter may have already received more than one NAK message for the same frame. This can result in multiple copies of the frame being transmitted back to the requesting entity, which is the mobile station in the example. If one of the retransmitted frames is received correctly by the requesting entity, copies of additional retransmitted frames received afterwards will be ignored by the requesting entity. These redundant transmissions are referred to as extra retransmissions in this disclosure. Retransmissions that were necessary, such as the first retransmitted frame that was received by the requesting entity, are referred to as required retransmissions in this disclosure. The sum total of extra retransmissions and required retransmissions are referred to as total retransmissions in this disclosure.
Extra retransmissions affect a Code Division Multiple Access (CDMA) system in several ways. For example the extra retransmissions reduce TCP throughput. Typically, in an ARQ scheme, before a transmitter will transmit new frames, it will retransmit a frame that did not reach the receiver upon initial transmission and that is requested in a NAK message. Consequently, the retransmitted frames block the yet to be transmitted new frames. Because retransmitted frames that are extra retransmissions are ignored by the receiver, the extra retransmissions do not contribute to information transfer and waste channel bandwidth. The aforementioned blocking effect also takes place at the RLP layer of the ARQ scheme described in TIA/EIA/IS-707. (The RLP layer described in the TIA/EIA/IS-707 document will hereinafter be referred to as “IS-707 RLP”).
The channel bandwidth waste effect is exaggerated in transmitters having high source activity. The rate at which an upper layer, such as the TCP layer, sends data to the RLP layer is referred to as source activity in this document. Source activity is affected by the window size of the upper layer. A larger window size allows the upper layer to send more bytes of data to the RLP layer without waiting for an acknowledgment message from a peer entity. Thus, the larger the window size of the upper layer, the more data the upper layer can send to the RLP layer, and the higher the source activity is.
During times of high source activity, the RLP layer receives a substantially constant flow of data from the upper layer and thus has a constant flow of data ready to be sent to lower layers for transmission to the peer entity. When the RLP layer must also send extra retransmissions (unnecessary retransmissions), transmission of the constant flow of data from the upper layer is delayed because the extra retransmissions must be transmitted first. This delays transmission and wastes channel bandwidth. Thus transmission delay results at both the TCP and the RLP layers.
In CDMA systems, extra retransmissions also cause greater interference to other CDMA system users. In a CDMA system, the channel bandwidth is shared by all users in the same frequency band. Thus, when an extra retransmission is made, a transmitter unnecessarily uses the channel bandwidth and unnecessarily interferes with the bandwidth use of others. This causes an increase in the Frame Error Rate (FER) and an increase in power requirements, which in turn, causes lower throughput. The described problems are evident not only in the TIA/EIA/IS-707 environments, but also in other environments incorporating ARQ, and in particular, NAK schemes.
Accordingly, there still exists a need for a method, and for mobile stations and base stations that are not encumbered by one or more of the shortcomings described above. The spirit and scope of the present invention covers such a method, and mobile station and base station.